package com.video.ui.loader; import android.content.Context; import com.android.volley.RequestQueue; import com.android.volley.toolbox.VolleyHelper; import com.google.gson.reflect.TypeToken; import com.tv.ui.metro.model.DisplayItem; import com.tv.ui.metro.model.GenericBlock; /** * Created by tv metro on 9/1/14. */ public class TabsGsonLoader extends BaseGsonLoader<GenericBlock<DisplayItem>> { public static int LOADER_ID = 0x401; @Override public void setCacheFileName() { cacheFileName = "tabs_content.cache"; } @Override public void setLoaderURL(DisplayItem item) { //only for test //calledURL = "https://raw.githubusercontent.com/AiAndroid/mobilevideo/master/mobile_port.json"; calledURL = CommonBaseUrl.BaseURL + "c/home"; } public TabsGsonLoader(Context context, DisplayItem item) { super(context, item, 1); } @Override protected void loadDataByGson() { RequestQueue requestQueue = VolleyHelper.getInstance(getContext().getApplicationContext()).getAPIRequestQueue(); GsonRequest<GenericBlock<DisplayItem>> gsonRequest = new GsonRequest<GenericBlock<DisplayItem>>(calledURL, new TypeToken<GenericBlock<DisplayItem>>(){}.getType(), null, listener, errorListener); gsonRequest.setCacheNeed(getContext().getCacheDir() + "/" + cacheFileName); requestQueue.add(gsonRequest); } }